DragDrop.VBX, 20-Feb-93, Version 3. Copyright (c) Apex Software Corporation, 1992-1993. The enclosed file, DRAGDROP.VBX is provided as-is and may be used freely. It is not shareware and no warranties are provided of any kind whatsoever. Enjoy! ------------------------------------------------------------------------ 1) What is DRAGDROP.VBX DRAGDROP.VBX allows Visual Basic applications to intercept File Manager drag drop messages, and hence react to files dropped into Visual Basic forms. Using DRAGDROP.VBX is easy. DRAGDROP is an invisible (design-time only) control. You can place it anywhere on a form. There is a single event, Drop, which is triggered whenever a file is dropped into the form in which the control resides. When drop is triggered, one or more files have been dropped into the form. Two properties are used to access the list of files: .FileCount This returns the number of files dropped. .FileName(index) This property array is used to access each dropped file. For example, here is a sample implementation of the Drop event which will print the name of each dropped file on the current form: Sub DragDrop1_Drop (PointX As Long, PointY As Long) ' Clear the form first Form1.Cls ' Print the count of files, and list each dropped ' file on the form. nf% = DragDrop1.FileCount Form1.Print nf%; "Dropped" For i% = 0 To nf% - 1 Form1.Print " File: "; DragDrop1.FileName(i%) Next i% End Sub 2) Special considerations DRAGDROP.VBX works only under Visual Basic 2.0 (or later, I suppose) and has very simple capabilities. However, the control has an Align property which can be used to include the control in a VB 2.0 MDI form. This is extremely useful for dropping files into an MDI form and then opening a form which "represents" the file in some way. The passed arguments to Drop specify the X and Y form coordinate in twips where the drop occurred. ------------------------------------------------------------------------ DRAGDROP.VBX was written by Gary Wisniewski at Apex Software, just for fun. If you have any problems or questions, you can reach me on CompuServe at account 76130,2374.